<?xml version="1.0"?>
<doc>
    <assembly>
        <name>FileTypeDetective</name>
    </assembly>
    <members>
        <member name="T:FileTypeDetective.Detective">
            <summary>
            Helper class to identify file type by the file header, not file extension.
            </summary>
        </member>
        <member name="M:FileTypeDetective.Detective.GetFileType(System.IO.FileInfo)">
            <summary>
            Read header of a file and depending on the information in the header
            return object FileType.
            Return null in case when the file type is not identified. 
            Throws Application exception if the file can not be read or does not exist
            </summary>
            <param name="file">The FileInfo object.</param>
            <returns>FileType or null not identified</returns>
        </member>
        <member name="M:FileTypeDetective.Detective.ReadFileHeader(System.IO.FileInfo,System.Int32)">
            <summary>
            Reads the file header - first (16) bytes from the file
            </summary>
            <param name="file">The file to work with</param>
            <returns>Array of bytes</returns>
        </member>
        <member name="M:FileTypeDetective.Detective.isFileOfTypes(System.IO.FileInfo,System.Collections.Generic.List{FileTypeDetective.FileType})">
            <summary>
            Determines whether provided file belongs to one of the provided list of files
            </summary>
            <param name="file">The file.</param>
            <param name="requiredTypes">The required types.</param>
            <returns>
              <c>true</c> if file of the one of the provided types; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.isFileOfTypes(System.IO.FileInfo,System.String)">
            <summary>
            Determines whether provided file belongs to one of the provided list of files,
            where list of files provided by string with Comma-Separated-Values of extensions
            </summary>
            <param name="file">The file.</param>
            <param name="requiredTypes">The required types.</param>
            <returns>
              <c>true</c> if file of the one of the provided types; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.GetFileTypesByExtensions(System.String)">
            <summary>
            Gets the list of FileTypes based on list of extensions in Comma-Separated-Values string
            </summary>
            <param name="CSV">The CSV String with extensions</param>
            <returns>List of FileTypes</returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsType(System.IO.FileInfo,FileTypeDetective.FileType)">
            <summary>
            Determines whether the specified file is of provided type
            </summary>
            <param name="file">The file.</param>
            <param name="type">The FileType</param>
            <returns>
              <c>true</c> if the specified file is type; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsPdf(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is PDF.
            </summary>
            <param name="file">The file.</param>
            <returns>
              <c>true</c> if the specified file is PDF; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsWord(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file info is ms-word document file
            </summary>
            <param name="fileInfo">The file info.</param>
            <returns>
              <c>true</c> if the specified file info is doc; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsZip(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is zip archive
            </summary>
            <param name="fileInfo">The file info.</param>
            <returns>
              <c>true</c> if the specified file info is zip; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsExcel(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is MS Excel spreadsheet
            </summary>
            <param name="fileInfo">The FileInfo</param>
            <returns>
              <c>true</c> if the specified file info is excel; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsJpeg(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is JPEG image
            </summary>
            <param name="fileInfo">The FileInfo.</param>
            <returns>
              <c>true</c> if the specified file info is JPEG; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsRar(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is RAR-archive.
            </summary>
            <param name="fileInfo">The FileInfo.</param>
            <returns>
              <c>true</c> if the specified file info is RAR; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsRtf(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is RTF document.
            </summary>
            <param name="fileInfo">The FileInfo.</param>
            <returns>
              <c>true</c> if the specified file is RTF; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsPng(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is PNG.
            </summary>
            <param name="fileInfo">The FileInfo object</param>
            <returns>
              <c>true</c> if the specified file info is PNG; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsPpt(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is Microsoft PowerPoint Presentation
            </summary>
            <param name="fileInfo">The FileInfo object.</param>
            <returns>
              <c>true</c> if the specified file info is PPT; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsGif(System.IO.FileInfo)">
            <summary>
            Determines whether the specified file is GIF image
            </summary>
            <param name="fileInfo">The FileInfo object</param>
            <returns>
              <c>true</c> if the specified file info is GIF; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsExe(System.IO.FileInfo)">
            <summary>
            Checks if the file is executable
            </summary>
            <param name="fileInfo"></param>
            <returns></returns>
        </member>
        <member name="M:FileTypeDetective.Detective.IsMsi(System.IO.FileInfo)">
            <summary>
            Check if the file is Microsoft Installer.
            Beware, many Microsoft file types are starting with the same header. 
            So use this one with caution. If you think the file is MSI, just need to confirm, use this method. 
            But it could be MSWord or MSExcel, or Powerpoint... 
            </summary>
            <param name="fileInfo"></param>
            <returns></returns>
        </member>
        <member name="T:FileTypeDetective.FileType">
            <summary>
            Little data structure to hold information about file types. 
            Holds information about binary header at the start of the file
            </summary>
        </member>
        <member name="M:FileTypeDetective.FileType.#ctor(System.Nullable{System.Byte}[],System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:FileTypeDetective.FileType"/> class.
            Default construction with the header offset being set to zero by default
            </summary>
            <param name="header">Byte array with header.</param>
            <param name="extension">String with extension.</param>
            <param name="mime">The description of MIME.</param>
        </member>
        <member name="M:FileTypeDetective.FileType.#ctor(System.Nullable{System.Byte}[],System.Int32,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:FileTypeDetective.FileType"/> struct.
            Takes the details of offset for the header
            </summary>
            <param name="header">Byte array with header.</param>
            <param name="offset">The header offset - how far into the file we need to read the header</param>
            <param name="extension">String with extension.</param>
            <param name="mime">The description of MIME.</param>
        </member>
    </members>
</doc>
